package com.ruoyi.rsikManage.MonitorPoint.mapper;

import java.util.List;
import java.util.Map;

import com.ruoyi.rsikManage.MonitorPoint.domain.TMonitorOfflineStatistics;
import com.ruoyi.rsikManage.MonitorPoint.domain.TMonitorPointRequest;
import org.apache.ibatis.annotations.Mapper;

/**
 * 通道离线记录Mapper接口
 *
 * @author sxygsj
 * @date 2024-12-25
 */
@Mapper
public interface TMonitorOfflineStatisticsMapper
{
    /**
     * 查询通道离线记录
     *
     * @param id 通道离线记录主键
     * @return 通道离线记录
     */
    public TMonitorOfflineStatistics selectTMonitorOfflineStatisticsById(Long id);

    /**
     * 查询通道离线记录列表
     *
     * @param tMonitorOfflineStatistics 通道离线记录
     * @return 通道离线记录集合
     */
    public List<TMonitorOfflineStatistics> selectTMonitorOfflineStatisticsList(TMonitorPointRequest tMonitorPointRequest);

    public List<Map<String,Object>> selectTMonitorOfflineStatisticsHour(TMonitorPointRequest tMonitorPointRequest);

    public List<Map<String,Object>> selectTMonitorOfflineStatisticsMonth(TMonitorPointRequest tMonitorPointRequest);

    public List<Map<String,Object>> selectTMonitorOfflineStatisticsYear(TMonitorPointRequest tMonitorPointRequest);


    /**
     * 新增通道离线记录
     *
     * @param tMonitorOfflineStatistics 通道离线记录
     * @return 结果
     */
    public int insertTMonitorOfflineStatistics(TMonitorOfflineStatistics tMonitorOfflineStatistics);

    /**
     * 修改通道离线记录
     *
     * @param tMonitorOfflineStatistics 通道离线记录
     * @return 结果
     */
    public int updateTMonitorOfflineStatistics(TMonitorOfflineStatistics tMonitorOfflineStatistics);

    /**
     * 删除通道离线记录
     *
     * @param id 通道离线记录主键
     * @return 结果
     */
    public int deleteTMonitorOfflineStatisticsById(Long id);

    /**
     * 批量删除通道离线记录
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTMonitorOfflineStatisticsByIds(Long[] ids);
}
